.item {
  &.editor {
    padding-top: 20px;
    &:last-child:before {
      height: 36px;
    }
  }
  margin-left: 20px;
  padding: 0 5px 0 15px;
  position: relative;
  &.rootItem {
    margin-left: 0;
    padding-top: 0;
    &:before {
      height: 16px !important;
    }
  }
  &:before {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    border-left: 1px solid #eee;
    content: '';
  }

  &:last-child {
    &:before {
      left: 0;
      top: 0;
      height: 16px;
      border-left: 1px solid #eee;
      content: '';
    }
  }

  .keyName {
    position: relative;
    display: flex;
    align-items: center;
    height: 32px;
    width: fit-content;
    padding: 0 5px;
    border-radius: 3px;
    white-space: nowrap;
    color: #333;

    &:before {
      position: absolute;
      left: -14px;
      width: 12px;
      top: 15px;
      border-bottom: 1px solid #eee;
      content: '';
    }

    .point {
      position: absolute;
      width: 9px;
      height: 9px;
      border-radius: 9px;
      border: 1px solid transparent;;
      cursor: move;
    }

    .typeName {
      font-style: italic;
      color: #AAA;
      padding-left: 3px;
    }

    button {
      display: none;
      margin: 0 0 0 5px;
      padding: 3px 5px;
      width: 30px;
      font-size: 12px;
      cursor: pointer;
    }
  }
}

.errorMsg {
  color: red;
  font-size: 12px;
  position: absolute;
  bottom: -20px;
}

.addItem {
  cursor: pointer;
  font-size: 20px;
  color: #1989fa;
}
.delete {
  margin-left: 10px;
  color: #ccc;
  font-size: 16px;
  cursor: pointer;
  &:hover {
    color: red;
  }
}